Tutorial 03-3D - Adding Series to a 3D Chart
Source code for this tutorial can be found at our SciChart.WPF.Examples Github Repository under Tutorials section.
Following on from Tutorial 02-3D - Creating a SciChart3DSurface
Declaring a RenderableSeries in XAML
To draw a Point Line series on the chart, we need to define RenderableSeries and DataSeries to hold the data.
First, let’s declare the RenderableSeries in XAML:
Declaring a RenderableSeries in XAML |
Copy Code |
---|---|
<Window x:Class="Tutorial_03_Adding_Series_to_a_3D_Chart.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s3D="http://schemas.abtsoftware.co.uk/scichart3D" Title="Tutorial 03 - Adding Series to a 3D Chart" Height="550" Width="800"> <Grid> <s3D:SciChart3DSurface x:Name="sciChart3DSurface"> <s3D:SciChart3DSurface.RenderableSeries> <!-- Define the RenderableSeries --> <!-- where xmlns:s3D="http://schemas.abtsoftware.co.uk/scichart3D" --> <s3D:PointLineRenderableSeries3D x:Name="pointLineSeries3D" IsAntialiased="True" StrokeThickness="2"> <s3D:PointLineRenderableSeries3D.PointMarker> <s3D:SpherePointMarker3D Opacity="0.5" Size="16"/> </s3D:PointLineRenderableSeries3D.PointMarker> </s3D:PointLineRenderableSeries3D> </s3D:SciChart3DSurface.RenderableSeries> <s3D:SciChart3DSurface.XAxis> <s3D:NumericAxis3D AxisTitle="X-Axis 3D"/> </s3D:SciChart3DSurface.XAxis> <s3D:SciChart3DSurface.YAxis> <s3D:NumericAxis3D AxisTitle="Y-Axis 3D"/> </s3D:SciChart3DSurface.YAxis> <s3D:SciChart3DSurface.ZAxis> <s3D:NumericAxis3D AxisTitle="Z-Axis 3D"/> </s3D:SciChart3DSurface.ZAxis> <s3D:SciChart3DSurface.ChartModifier> <s3D:ModifierGroup3D> <s3D:OrbitModifier3D/> <s3D:ZoomExtentsModifier3D/> </s3D:ModifierGroup3D> </s3D:SciChart3DSurface.ChartModifier> </s3D:SciChart3DSurface> </Grid> </Window> |
For these series to show, we need to add some data to the chart. We are going to do this in code-behind.
Creating Data for the 3D Chart |
Copy Code |
---|---|
using System; using System.Windows; using System.Windows.Media; using SciChart.Charting3D.Model; namespace Tutorial_03_Adding_Series_to_a_3D_Chart { public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); Loaded += OnLoaded; } private void OnLoaded(object sender, RoutedEventArgs routedEventArgs) { var xyzDataSeries3D = new XyzDataSeries3D<double>(); var color = Color.FromRgb(64, 131, 183); //#FF4083B7 for (var i = 0; i < 100; i++) { var x = 5 * Math.Sin(i); var y = i; var z = 5 * Math.Cos(i); xyzDataSeries3D.Append(x, y, z, new PointMetadata3D(color)); } pointLineSeries3D.DataSeries = xyzDataSeries3D; } } } |
Congratulations! You now have added some series to a 3D chart!
See Also